


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>Getting Started &mdash; Akka Documentation</title>
    
    <link rel="stylesheet" href="../_static/style.css" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    <link rel="stylesheet" href="../_static/prettify.css" type="text/css" />
    <link rel="stylesheet" href="../_static/base.css" type="text/css" />
    <link rel="stylesheet" href="../_static/docs.css" type="text/css" />
    <link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Exo:300,400,600,700" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../',
        VERSION:     '2.0.1',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script>
    <script type="text/javascript" src="../_static/jquery.js"></script>
    <script type="text/javascript" src="../_static/underscore.js"></script>
    <script type="text/javascript" src="../_static/doctools.js"></script>
    <script type="text/javascript" src="../_static/toc.js"></script>
    <script type="text/javascript" src="../_static/prettify.js"></script>
    <script type="text/javascript" src="../_static/highlightCode.js"></script>
    <script type="text/javascript" src="../_static/effects.core.js"></script>
    <script type="text/javascript" src="../_static/effects.highlight.js"></script>
    <script type="text/javascript" src="../_static/scrollTo.js"></script>
    <script type="text/javascript" src="../_static/contentsFix.js"></script>
    <link rel="shortcut icon" href="../_static/favicon.ico"/>
    <link rel="top" title="Akka Documentation" href="../index.html" />
    <link rel="up" title="Introduction" href="index.html" />
    <link rel="next" title="Getting Started Tutorial (Scala): First Chapter" href="getting-started-first-scala.html" />
    <link rel="prev" title="Why Akka?" href="why-akka.html" /> 
  </head>
  <body>
  <div class="navbar">
    <div class="navbar-inner">
      <div class="container">
        <div class="navbar-logo">
          <a href="http://akka.io"><img src="../_static/logo-small.png" /></a>
        </div>    
        <ul class="nav">
          <li><a href="http://akka.io/docs">Documentation</a></li>
          <li><a href="http://akka.io/downloads">Download</a></li>
          <li><a href="http://groups.google.com/group/akka-user">Mailing List</a></li>
          <li><a href="http://github.com/akka/akka">Code</a></li>           
          <li><a href="http://typesafe.com/products/typesafe-subscription">Commerical Support</a></li>
        </ul>
      </div>
    </div>
  </div>
  <div class="main">
    <div class="container">
      <div class="page-title">Getting Started</div><div class="pdf-link"><a href="http://akka.io/docs/akka/2.0.1/Akka.pdf"><img src="../_static/pdf-icon.png" style="height: 40px;" /></a></div></div>
    <div class="main-container">
      <div class="container">
        <div class="row">
          <div class="span12">
            <ul class="breadcrumb">           
              <li>
                 <span class="divider">|</span> <a href="getting-started-first-scala.html">Getting Started Tutorial (Scala): First Chapter</a> <span class="divider">»</span>
              </li>
              <li>
                <a href="../index.html">Contents</a>
              </li>
              <li>
                <span class="divider">«</span> <a href="why-akka.html">Why Akka?</a> <span class="divider">|</span>
              </li>
              <li>
                Version 2.0.1
              </li>
            </ul>         
          </div>
        </div>
        <div class="row">
          <div class="span9">
            
  <div class="section" id="getting-started">
<h1>Getting Started</h1>
<p>The best way to start learning Akka is to try the Getting Started Tutorial,
which comes in several flavours depending on you development environment
preferences:</p>
<ul class="simple">
<li><a class="reference internal" href="getting-started-first-java.html#getting-started-first-java"><em>Getting Started Tutorial (Java): First Chapter</em></a> for Java development, either<ul>
<li>as standalone project, running from the command line,</li>
<li>or as Maven project and running it from within Maven</li>
</ul>
</li>
<li><a class="reference internal" href="getting-started-first-scala.html#getting-started-first-scala"><em>Getting Started Tutorial (Scala): First Chapter</em></a> for Scala development, either<ul>
<li>as standalone project, running from the command line,</li>
<li>or as SBT (Simple Build Tool) project and running it from within SBT</li>
</ul>
</li>
</ul>
<p>The Getting Started Tutorial describes everything you need to get going, and you
don&#8217;t need to read the rest of this page if you study the tutorial. For later
look back reference this page describes the essential parts for getting started
with different development environments.</p>
<div class="section" id="prerequisites">
<h2>Prerequisites</h2>
<p>Akka requires that you have <a class="reference external" href="http://www.oracle.com/technetwork/java/javase/downloads/index.html">Java 1.6</a> or
later installed on you machine.</p>
</div>
<div class="section" id="download">
<h2>Download</h2>
<p>There are several ways to download Akka. You can download the full distribution
with microkernel, which includes all modules. Or you can use a build tool like
Maven or sbt to download dependencies from the Akka Maven repository.</p>
</div>
<div class="section" id="modules">
<h2>Modules</h2>
<p>Akka is very modular and has many JARs for containing different features.</p>
<ul class="simple">
<li><tt class="docutils literal"><span class="pre">akka-actor-2.0.1.jar</span></tt> &#8211; Standard Actors, Typed Actors and much more</li>
<li><tt class="docutils literal"><span class="pre">akka-remote-2.0.1.jar</span></tt> &#8211; Remote Actors</li>
<li><tt class="docutils literal"><span class="pre">akka-slf4j-2.0.1.jar</span></tt> &#8211; SLF4J Event Handler Listener</li>
<li><tt class="docutils literal"><span class="pre">akka-testkit-2.0.1.jar</span></tt> &#8211; Toolkit for testing Actors</li>
<li><tt class="docutils literal"><span class="pre">akka-kernel-2.0.1.jar</span></tt> &#8211; Akka microkernel for running a bare-bones mini application server</li>
<li><tt class="docutils literal"><span class="pre">akka-&lt;storage-system&gt;-mailbox-2.0.1.jar</span></tt> &#8211; Akka durable mailboxes</li>
</ul>
<p>How to see the JARs dependencies of each Akka module is described in the
<a class="reference internal" href="../dev/building-akka.html#dependencies"><em>Dependencies</em></a> section. Worth noting is that <tt class="docutils literal"><span class="pre">akka-actor</span></tt> has zero
external dependencies (apart from the <tt class="docutils literal"><span class="pre">scala-library.jar</span></tt> JAR).</p>
</div>
<div class="section" id="using-a-release-distribution">
<h2>Using a release distribution</h2>
<p>Download the release you need from <a class="reference external" href="http://akka.io/downloads">http://akka.io/downloads</a> and unzip it.</p>
</div>
<div class="section" id="using-a-snapshot-version">
<h2>Using a snapshot version</h2>
<p>The Akka nightly snapshots are published to <a class="reference external" href="http://akka.io/snapshots/">http://akka.io/snapshots/</a> and are
versioned with both <tt class="docutils literal"><span class="pre">SNAPSHOT</span></tt> and timestamps. You can choose a timestamped
version to work with and can decide when to update to a newer version. The Akka
snapshots repository is also proxied through <a class="reference external" href="http://repo.typesafe.com/typesafe/snapshots/">http://repo.typesafe.com/typesafe/snapshots/</a>
which includes proxies for several other repositories that Akka modules depend on.</p>
</div>
<div class="section" id="microkernel">
<h2>Microkernel</h2>
<p>The Akka distribution includes the microkernel. To run the microkernel put your
application jar in the <tt class="docutils literal"><span class="pre">deploy</span></tt> directory and use the scripts in the <tt class="docutils literal"><span class="pre">bin</span></tt>
directory.</p>
<p>More information is available in the documentation of the <a class="reference internal" href="../modules/microkernel.html#microkernel"><em>Microkernel</em></a>.</p>
</div>
<div class="section" id="using-a-build-tool">
<h2>Using a build tool</h2>
<p>Akka can be used with build tools that support Maven repositories. The Akka
Maven repository can be found at <a class="reference external" href="http://akka.io/realeses/">http://akka.io/realeses/</a> and Typesafe provides
<a class="reference external" href="http://repo.typesafe.com/typesafe/releases/">http://repo.typesafe.com/typesafe/releases/</a> that proxies several other
repositories, including akka.io.</p>
</div>
<div class="section" id="using-akka-with-maven">
<h2>Using Akka with Maven</h2>
<p>Information about how to use Akka with Maven, including how to create an Akka
Maven project from scratch, can be found in the
<a class="reference internal" href="getting-started-first-java.html#getting-started-first-java"><em>Getting Started Tutorial (Java): First Chapter</em></a>.</p>
<p>Summary of the essential parts for using Akka with Maven:</p>
<ol class="arabic simple">
<li>Add this repository to your <tt class="docutils literal"><span class="pre">pom.xml</span></tt>:</li>
</ol>
<div class="highlight-xml"><div class="highlight"><pre><span class="nt">&lt;repository&gt;</span>
  <span class="nt">&lt;id&gt;</span>typesafe<span class="nt">&lt;/id&gt;</span>
  <span class="nt">&lt;name&gt;</span>Typesafe Repository<span class="nt">&lt;/name&gt;</span>
  <span class="nt">&lt;url&gt;</span>http://repo.typesafe.com/typesafe/releases/<span class="nt">&lt;/url&gt;</span>
<span class="nt">&lt;/repository&gt;</span>
</pre></div>
</div>
<ol class="arabic simple" start="2">
<li>Add the Akka dependencies. For example, here is the dependency for Akka Actor 2.0.1:</li>
</ol>
<div class="highlight-xml"><div class="highlight"><pre><span class="nt">&lt;dependency&gt;</span>
  <span class="nt">&lt;groupId&gt;</span>com.typesafe.akka<span class="nt">&lt;/groupId&gt;</span>
  <span class="nt">&lt;artifactId&gt;</span>akka-actor<span class="nt">&lt;/artifactId&gt;</span>
  <span class="nt">&lt;version&gt;</span>2.0.1<span class="nt">&lt;/version&gt;</span>
<span class="nt">&lt;/dependency&gt;</span>
</pre></div>
</div>
<p><strong>Note</strong>: for snapshot versions both <tt class="docutils literal"><span class="pre">SNAPSHOT</span></tt> and timestamped versions are published.</p>
</div>
<div class="section" id="using-akka-with-sbt">
<h2>Using Akka with SBT</h2>
<p>Information about how to use Akka with SBT, including how to create an Akka SBT project from scratch,
can be found in the <a class="reference internal" href="getting-started-first-scala.html#getting-started-first-scala"><em>Getting Started Tutorial (Scala): First Chapter</em></a>.</p>
<p>Summary of the essential parts for using Akka with SBT:</p>
<p>SBT installation instructions on <a class="reference external" href="https://github.com/harrah/xsbt/wiki/Setup">https://github.com/harrah/xsbt/wiki/Setup</a></p>
<p><tt class="docutils literal"><span class="pre">build.sbt</span></tt> file:</p>
<div class="highlight-scala"><div class="highlight"><pre><span class="n">name</span> <span class="o">:=</span> <span class="s">&quot;My Project&quot;</span>

<span class="n">version</span> <span class="o">:=</span> <span class="s">&quot;1.0&quot;</span>

<span class="n">scalaVersion</span> <span class="o">:=</span> <span class="s">&quot;2.9.1&quot;</span>

<span class="n">resolvers</span> <span class="o">+=</span> <span class="s">&quot;Typesafe Repository&quot;</span> <span class="n">at</span> <span class="s">&quot;http://repo.typesafe.com/typesafe/releases/&quot;</span>

<span class="n">libraryDependencies</span> <span class="o">+=</span> <span class="s">&quot;com.typesafe.akka&quot;</span> <span class="o">%</span> <span class="s">&quot;akka-actor&quot;</span> <span class="o">%</span> <span class="s">&quot;2.0.1&quot;</span>
</pre></div>
</div>
</div>
<div class="section" id="using-akka-with-eclipse">
<h2>Using Akka with Eclipse</h2>
<p>Setup SBT project and then use <a class="reference external" href="https://github.com/typesafehub/sbteclipse">sbteclipse</a> to generate Eclipse project.</p>
</div>
<div class="section" id="using-akka-with-intellij-idea">
<h2>Using Akka with IntelliJ IDEA</h2>
<p>Setup SBT project and then use <a class="reference external" href="https://github.com/mpeltonen/sbt-idea">sbt-idea</a> to generate IntelliJ IDEA project.</p>
</div>
<div class="section" id="build-from-sources">
<h2>Build from sources</h2>
<p>Akka uses Git and is hosted at <a class="reference external" href="http://github.com">Github</a>.</p>
<ul class="simple">
<li>Akka: clone the Akka repository from <a class="reference external" href="http://github.com/akka/akka">http://github.com/akka/akka</a></li>
</ul>
<p>Continue reading the page on <a class="reference internal" href="../dev/building-akka.html#building-akka"><em>Building Akka</em></a></p>
</div>
<div class="section" id="need-help">
<h2>Need help?</h2>
<p>If you have questions you can get help on the <a class="reference external" href="http://groups.google.com/group/akka-user">Akka Mailing List</a>.</p>
<p>You can also ask for <a class="reference external" href="http://typesafe.com">commercial support</a>.</p>
<p>Thanks for being a part of the Akka community.</p>
</div>
</div>


          </div>
          <div class="span3"><p class="contents-title">Contents</p>
              <div id="scroller-anchor">
                <div id="scroller">
                  <div id="toc"></div>
                </div>
              </div></div>
        </div>
      </div>
    </div>
  </div>
  <div class="footer">
  <div class="container">
    <ul>
      <li><h5>Akka</h5></li>
      <li><a href="http://akka.io/docs">Documentation</a></li>
      <li><a href="http://akka.io/downloads">Downloads</a></li>
    </ul>
    <ul>
      <li><h5>Contribute</h5></li>
      <li><a href="http://github.com/akka/akka">Source Code</a></li>
      <li><a href="http://groups.google.com/group/akka-user">Mailing List</a></li>      
      <li><a href="http://www.assembla.com/spaces/akka/tickets">Report a Bug</a></li>      
    </ul>
    <ul>
      <li><h5>Company</h5></li>
      <li><a href="http://typesafe.com/products/typesafe-subscription">Commercial Support</a></li>
      <li><a href="http://akka.io/team">Team</a></li>
      <li><a href="mailto:info@typesafe.com">Contact</a></li>
    </ul>
    <ul>
      <li><img src="../_static/watermark.png" align="center"/></li>
    </ul>
  </div>
  <div class="container copyright">
    <p style="float: left;">
      © 2012 <a href="http://typesafe.com/">Typesafe Inc.</a> <span class="license">Akka is Open Source and available under the Apache 2 License.</span>
    </p>
    <p style="float: right; font-size: 12px;">
      Last updated: Apr 13, 2012
    </p>          
  </div>
</div>
<script type="text/javascript">
  $('#toc').toc();
</script>
  

  </body>
</html>